package com.yf.service.manage;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.yf.model.ai.entity.AiTool;
import com.yf.model.ai.form.AiToolForm;
import com.yf.model.ai.query.AiToolPageQuery;
import com.yf.model.ai.vo.AiToolPageVO;

import java.util.List;

/**
 * AI 工具-AiToolService
 *
 * @author: YiFei
 * @since : 2025年7月5日 00:49:31
 */
public interface IAiToolService extends IService<AiTool> {

    /**
     * 分页查询AI 工具
     *
     * @param queryParams 查询参数
     * @return AI 工具分页数据
     */
    IPage<AiToolPageVO> getAiToolPage(AiToolPageQuery queryParams);

    /**
     * 删除AI 工具
     *
     * @param ids AI 工具id集合
     * @return 是否删除成功
     */
    boolean deleteAiTool(List<Integer> ids);

    /**
     * AI 工具表单数据
     *
     * @param id AI 工具主键
     * @return AI 工具表单数据
     */
    AiToolForm getAiToolForm(Integer id);

    /**
     * 保存AI 工具
     *
     * @param aiToolForm AI 工具表单
     * @return AI 工具主键
     */
    Integer saveAiTool(AiToolForm aiToolForm);

    /**
     * 修改AI 工具
     *
     * @param id         AI 工具主键
     * @param aiToolForm AI 工具表单
     * @return 是否修改成功
     */
    boolean updateAiTool(Integer id, AiToolForm aiToolForm);
}
